There are three major types of multiple access digital transmission systems, known as Frequency Division Multiple Access (FDMA), Time Division Multiple Access (TDMA), and Code Division Multiple Access (CDMA). FDMA entails spreading the calls to be transmitted by assigning each call a specific frequency band which can be separated from the others by filtering at the receiving end. TDMA entails sending the multiple calls using the time sharing of the entire band of the transmission channel. That is to prevent information overlapping, only one station transmits data at a time and, when it does, it occupies all of the channel band width.
FDMA and TDMA are rarely used today because of their inherent problems. FDMA requires a receiver for each transmission channel, so that a considerable number of receivers are required in a central base station if it is to be possible to converse simultaneously with a large number of mobile stations. TDMA systems encounter difficult problems with equalization if the transmission channel is disrupted by echoes or by jamming.
CDMA uses spread spectrum techniques and is a preferred multiple access digital transmission system. In a CDMA communication system, a call between a base station and a mobile station is established by employing code channels. In other words, the mobile station selects an optimum base station for communication and the base station assigns to the mobile station code channels to be used for communication.
In CDMA, a digital data signal is multiplied by a spreading sequence before it is transmitted. A different spreading sequence is associated with each mobile station (i.e., each user) connected to a base station. A spreading sequence is usually in the form of a pseudo-random binary sequence characterized by its chip frequency, and by a repetition period of the pseudo-random sequence called the code period.
A digital data signal to be transmitted is in the form of a binary signal characterized by its bit frequency. The bit frequency is a multiple of the chip frequency, and the spreading factor of a spreading sequence is the ratio between the chip frequency and the bit frequency.
The digital data signal to be transmitted is combined with the spreading sequence, for example by modulo addition or by multiplication, depending upon the nature of the signals. The resulting signal is filtered and then transmitted over a code channel. The code channel is distinguished at the base station in accordance with the distinctions of the spreading sequences for the mobile station. The number of spreading sequences for a mobile station corresponds to the number of code channels.
At the receiving end, after further filtering, decoding is effected by combining the received signal with a local replica of the spreading sequence synchronized to the transmission. It results in the retrieval of the original digital data signal.
A CDMA communication method, one of the spread spectrum communication methods, has been disclosed, for example, in "Mobile Station--Base Station Compatibility Standard for Dual-Mode Wideband Spread Spectrum Cellular System" TIA/EIA/IS-95A, Jul. 1995 as a TIA/EIA standard. This IS-95A standard has been modified to incorporate the high speed data capacity that requires simultaneous transmission of up to eight code channels. Consequently, the transmission of high speed data requires simultaneous generation of eight spreading sequences to be incorporated within the eight code channels.
FIG. 1 is a block diagram of a prior art spreading sequence generator 100 used to generate multiple spreading sequences. The spreading sequence generator 100 comprises a long code generator 102, a mask register 104, an AND operator 110, and a modulo-2 adder 114.
The long code generator 102 generates a long code 108, and the mask register 104 generates a masking stream 106. In a typical embodiment, the long code 108 comprises forty two states and the masking stream 106 comprises forty two mask bits. The long code 108 and masking stream 106 are combined by an AND operator 110 and the product is then fed to the modulo-2 adder 114. The resulting output 116 is a spreading sequence to be used for various mobile stations transmitting high speed data.
In the prior art, to generate eight different spreading sequences, the above process is repeated eight different times by loading the mask register with eight different masks during one chip interval. The output sequentially produces eight different spreading sequences, one for each code channel.
This sequential approach of generating eight different spreading sequences is very expensive and time consuming as it requires eight separate operations. Moreover, extra circuitry is required to handle the loading of the masks and the multiplexing of the output.
Therefore, there exists a need for a device which may generate multiple spreading sequences in parallel with reduced power and time requirements.